package com.liangtian.mdm.material.service;

import com.github.pagehelper.PageInfo;
import com.liangtian.mdm.activiti.api.entity.ShForm;
import com.liangtian.mdm.material.model.WlLb;

import javax.servlet.http.HttpServletResponse;
import java.util.List;
import java.util.Map;

public interface WlLbService {

    public List<WlLb> getWllbTreeByPermissionCond(WlLb wllb);

    @SuppressWarnings("rawtypes")
    public PageInfo getWlLbListByCond(Map<String, Object> map);

    public int insertWlLb(WlLb wllb);

    public int checkWllbbmExist(WlLb wllb);

    public int checkWllbmcExist(WlLb wllb);

    public int deleteWlLbByIdS(Map<String, Object> map);

    public WlLb getWlLbById(WlLb wllb);

    public int checkCodeUpdate(WlLb wllb);

    public int checkNameUpdate(WlLb wllb);

    public void updateWlLb(WlLb wllb);

    @SuppressWarnings("rawtypes")
    public PageInfo getWllbQtSelectListByCond(Map<String, Object> map);

    public int insertWllbUpdateBg(String lbbm_id, String operType);

    public int insertWllbUpdateQt(String lbbm_id, String operType);

    public int getEditCountByLbbm(WlLb wllb);

    public int updateWlLbByWork(Map<String, Object> map);

    /**
     * 插入分发数据
     *
     * @param ids,opertype
     * @return
     
     * @date 2017-03-20
     */
    public void insertWllbDis(String id, String opertype);

    public void insertWllbDis(List<String> ids, String opertype);

    @SuppressWarnings("rawtypes")
    public PageInfo getWllbListByCondSqSh(Map<String, Object> map);

    public int submitWlLbUpdateStateById(Map<String, Object> map);

    /**
     * 物料类别审核
     *
     * @param forms 待审数据
     * @return
     
     * @date 2017-03-23
     */
    public Map<String, Object> wlLbApprove(List<ShForm> forms);

    public List<String> getWlLbLbbmIdByLbbmS(String lbbm);

    public void tyWlLbByIdS(Map<String, Object> map);

    public void updateWlLbBg(WlLb wllb);

    public void updateWlLbBgLong(WlLb wllb);

    public List<WlLb> getWllbTreeByTzlQzKey(Map<String, Object> map);

    public void shenHetg(List<ShForm> F_data);

    public void shenHejj(List<ShForm> F_data);

    public List<WlLb> getWlLbExportListByCond(Map<String, Object> map);

    //物料类别导出
    public void exportWlLb(List<WlLb> list, HttpServletResponse response);

    @SuppressWarnings("rawtypes")
    public PageInfo getWlLbListByCond2(Map<String, Object> map);

    public List<String> getTzlQzKeyLbbms(String qzKey);
}
